const vector3d& GetPosition (void)
Returns
the particle position in physical space
const vector3d& GetVelocity (void)
Returns
the particle velocity in physical space.
double GetAge (void)
Returns
the age of the particle given in seconds.
double GetProperty_Scalar (const double& _default , const ParticleProperty & prop, const BaseObject* node_interface = NULL)
Returns
the value of the requested scalar property or the passed default value if there is no such property attached to the particle.
Parameters
const double& _default:
the default value that is returned if no such property is available.
const ParticleProperty & prop:
the property type to retrieve. See ParticleProperty for a list of properties.
const BaseObject* node_interface:
optionally a property node interface. This is really only necessary if you want to retrieve a custom property
because there can be multiple custom properties of the same type. The node interface is the explicit identifier for such a custom property.
vector3d GetProperty_Vector (const vector3d& _default , const ParticleProperty & prop, const BaseObject* node_interface = NULL)
Returns
the value of the requested vector property or the passed default value if there is no such property attached to the particle.
Parameters
const vector3d& _default:
the default value that is returned if no such property is available.
const ParticleProperty & prop:
the property type to retrieve. See ParticleProperty for a list of properties.
const BaseObject* node_interface:
optionally a property node interface. This is really only necessary if you want to retrieve a custom property
because there can be multiple custom properties of the same type. The node interface is the explicit identifier for such a custom property.
bool GetProperty_State (const bool& _default , const ParticleProperty & prop, const BaseObject* node_interface = NULL)
Returns
the value of the requested boolean property or the passed default value if there is no such property attached to the particle.
Parameters
const bool& _default:
the default value that is returned if no such property is available.
const ParticleProperty & prop:
the property type to retrieve. See ParticleProperty for a list of properties.
const BaseObject* node_interface:
optionally a property node interface. This is really only necessary if you want to retrieve a custom property
because there can be multiple custom properties of the same type. The node interface is the explicit identifier for such a custom property.
void SetPosition (const vector3d& pos)
Overwrites the particle position.
Parameters
const vector3d& pos:
The new particle position given in physical space.
void SetVelocity (const vector3d& vel)
Overwrites the particle velocity..
Parameters
const vector3d& pos:
The new particle velocity given in physical space.
void SetAge (const int age)
Overwrites the particle age. This is the same as using SetProperty_Scalar with PROPERTY_TYPE_AGE passed as ParticleProperty.
Parameters
const int age:
The new particle age given in frames.
bool SetProperty_Scalar (const double val , const ParticleProperty &prop, const BaseObject* node_interface = NULL)
Overwrites the requested scalar property.
Returns
true if successful.
Parameters
const double val:
the new scalar property value.
const ParticleProperty & prop:
the property type to set. See ParticleProperty for a list of properties.
const BaseObject* node_interface:
optionally a property node interface. This is really only necessary if you want to change a custom property
because there can be multiple custom properties of the same type. The node interface is the explicit identifier for such a custom property.
bool SetProperty_Vector (const vector3d& val , const ParticleProperty & prop, const BaseObject* node_interface = NULL)
Overwrites the requested vector property.
Returns
true if successful.
Parameters
const vector3d& val:
the new vector property value.
const ParticleProperty & prop:
the property type to set. See ParticleProperty for a list of properties.
const BaseObject* node_interface:
optionally a property node interface. This is really only necessary if you want to change a custom property
because there can be multiple custom properties of the same type. The node interface is the explicit identifier for such a custom property.
bool SetProperty_State (const bool val , const ParticleProperty & prop, const BaseObject* node_interface = NULL)
Overwrites the requested boolean property.
Returns
true if successful.
Parameters
const bool val:
the new boolean property value.
const ParticleProperty & prop:
the property type to set. See ParticleProperty for a list of properties.
const BaseObject* node_interface:
optionally a property node interface. This is really only necessary if you want to change a custom property
because there can be multiple custom properties of the same type. The node interface is the explicit identifier for such a custom property.